package com.example.prom.exception;

import lombok.Getter;

/**
 * @Author dangwen+
 * 自定义异常类。
 * 触发事务回滚的方式是抛出异常，常用的异常类型是RuntimeException，然而RuntimeException没法很好的扩展异常信息，所以需要自定义异常类
 * 1.自定义异常可以携带更多的信息，不像这样只能携带一个字符串。
 * 2.项目开发中经常是很多人负责不同的模块，使用自定义异常可以统一了对外异常展示的方式。
 * 3.自定义异常语义更加清晰明了，一看就知道是项目中手动抛出的异常。
 */
@Getter //只要getter方法，无需setter
public class ApiException extends RuntimeException {
    private int code;
    private String msg;

    public ApiException(int code, String msg){
        super(msg);
        this.code = code;
        this.msg = msg;
    }

    public ApiException(){
        this(1001,"接口错误");
    }

    public ApiException(String msg){
        this(1001,msg);
    }
}
